package org.example;

import java.util.*;
import java.util.stream.Collectors;

/**
 * @ClassName Demo
 * @Description
 * @Author zhangsw
 * @Date 2020/10/24 14:36
 * @Version 1.0
 */
public class Demo {
    public static void main(String[] args) {
        EnergyType energyType = EnergyType.getEnergyEntityByType("2");
        System.err.println(energyType.getType());
        System.err.println(energyType.getEnergyNum());
        System.err.println(energyType.getName());


//        long i = Long.parseLong("1603608857548");
//        System.err.println(i);

//        List<Map<String,String>> list = new ArrayList<>();
//        Map<String,String> m = new HashMap<>();
//        m.put("COUNT", "2");
//        m.put("TYPE", "1");
//        Map<String,String> m2 = new HashMap<>();
//        m.put("COUNT", "1");
//        m.put("TYPE", "4");
//        Map<String,String> m3 = new HashMap<>();
//        m.put("COUNT", "1");
//        m.put("TYPE", "5");
//        list.add(m);
//        list.add(m2);
//        list.add(m3);
//
//        for (Map<String, String> map : list) {
//            map.get("TYPE").equals("1");
//        }
//
//        Map<String,String> res = new HashMap<>();
//        res.put("1", "");



//        System.err.println(EnergyType.SIGN.getName());
//        System.err.println(EnergyType.SIGN.getType());
//        System.err.println(EnergyType.SIGN.getEnergyNum());
//        for (EnergyType value : EnergyType.values()) {
//            String type = value.getType();
//            System.err.println(type);
//        }
//        String type = "5";
//        switch(type){
//            case "3":
//                //小黑盒
//                break; //可选
//            case "4":
//                //免费视频彩铃
//                break; //可选
//            case "5":
//                //办理99电信PLUS会员
//                System.err.println("");
//                break;
//        }

//        EnergyType energyType = EnergyType.getEnergyEntityByType("1");
//        System.err.println(energyType.getType());
//        System.err.println(energyType.getName());
//        System.err.println(energyType.getEnergyNum());
    }
}

enum EnergyType {

    SIGN("签到","1", 10),
    BOOST("助力", "2", 20),
    BLOCK_BOX("小黑盒精选业务办理", "3", 100),
    GET_COLOR_RING("免费领取视频彩铃6个月", "4", 30),
    DX_PUSH("办理99电信PLUS会员", "5", 100),
    BROWSE_5G("浏览5G专区", "6", 20),
    BROWSE_BROAD_BAND("浏览宽带专区", "7", 10),
    BROWSE_FAMILY("浏览家庭专区", "8", 10),
    BROWSE_INTEREST("浏览权益专区", "9", 10),
    BROWSE_TERMINAL("浏览终端专区", "10", 10);

    private String name;
    private String type;
    private Integer energyNum;

    EnergyType(String name, String type, Integer energyNum) {
        this.name = name;
        this.type = type;
        this.energyNum = energyNum;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public Integer getEnergyNum() {
        return energyNum;
    }

    public void setEnergyNum(Integer energyNum) {
        this.energyNum = energyNum;
    }

    public static EnergyType getEnergyEntityByType(String type) {
        List<EnergyType> resList = Arrays.stream(EnergyType.values()).filter(t -> t.getType() == type).collect(Collectors.toList());
        return resList.size() > 0 ? resList.get(0) : null;
    }
}
